﻿#region Using directives

using System;
using BesAsm.Framework.Tracer;

#endregion

namespace BesAsm.MasterData.Entities
{
  ///<summary>
  /// Pipe, channel, ditch, and culvert data	
  ///</summary>
  /// <remarks>
  /// This file is generated once and will never be overwritten.
  /// </remarks>	
  [Serializable]
  [CLSCompliant(true)]
  public partial class Link : LinkBase, IGraphEdge, IArcEntity, IEntity
  {
    #region Constructors

    ///<summary>
    /// Creates a new <see cref="Link"/> instance.
    ///</summary>
    public Link() : base() { }

    #endregion

    #region IGraphEdge Members

    public int EdgeId
    {
      get { return this.LinkId; }
    }

    public int SinkNode
    {
      get { return this.DsNodeId; }
    }

    public int SourceNode
    {
      get { return this.UsNodeId; }
    }

    #endregion

    #region IArcEntity Members

    public int Oid
    {
      get { return this.Objectid; }
    }

    public string OidField
    {
      get { return "Objectid"; }
    }

    public static Enum OidColumn
    {
      get { return LinkColumn.Objectid; }
    }

    #endregion
    
  }
}
